<!DOCTYPE html "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org"
      xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"
    >
<meta charset="UTF-8">
<head th:include="include :: header"></head>

<body class="gray-bg">
<div class="wrapper wrapper-content ">
    <div class="col-sm-12">
        <div class="ibox">
            <div class="ibox-body">
                <div class="fixed-table-toolbar">
                    <div class="columns pull-right">
                        <button class="btn btn-success" onclick="query()">查询</button>
                        <button class="btn btn-success" onclick="resetParam()">重置</button>
                    </div>

                    <div class="columns pull-right col-md-2 nopadding">
                        <input class="form-control" type="text" id="productName" placeholder=产品名称" />
                    </div>
                    <div class="columns pull-right col-md-2 nopadding">
                        <select id="productStatus" data-placeholder="状态" class="form-control chosen-select" tabindex="1"
                                style="width: 100%">
                            <option value="">--状态--</option>
                            <option value="1">上架</option>
                            <option value="0">下架</option>
                        </select>
                    </div>

                    <div class="columns pull-right col-md-2 nopadding">
                        <select id="classId" data-placeholder="所属分类" class="form-control chosen-select" tabindex="1"
                                style="width: 100%">
                            <option value="">--所属分类--</option>
                            <option th:each="product,appStat:${productClasses}" th:value="${product.classId}" th:text="${product.className}"></option>
                        </select>
                    </div>
                    <div class="columns pull-right col-md-2 nopadding">
                        <input class="form-control" type="text" id="createTime" name="createTime" placeholder="创建时间" />
                    </div>
                </div>
            </div>
            <table id="exampleTable" data-mobile-responsive="true">
            </table>
        </div>
    </div>
</div>
</div>
<!--shiro控制bootstraptable行内按钮看见性 来自bootdo的创新方案 -->
<div>
    <script type="text/javascript">
        var s_edit_h = '';
    </script>
</div>
<div >
    <script type="text/javascript">
        s_edit_h = '';
    </script>
</div>
<div>
    <script type="text/javascript">
        var s_edit_d = '';
    </script>
</div>
<div >
    <script type="text/javascript">
        s_edit_d = '';
    </script>
</div>

</div>
<div th:include="include :: footer"></div>
<script type="text/javascript">

    var prefix = "/app/product";
    $(function () {
        $('#createTime').val('');
        load();
    });

    $('input[name="createTime"]').daterangepicker({
            locale: {
                format: 'YYYY-MM-DD'
            }
        },
        function(start, end, label) {

            // alert("A new date range was chosen: " + start.format        ('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD'));
        });

    function resetParam() {
        $('#productName').val('');
        $('#productStatus').val('');
        $('#classId').val('');
        $('#createTime').val('');
        reLoad();
    }

    function load() {
        $('#exampleTable')
            .bootstrapTable(
                {
                    method: 'get', // 服务器数据的请求方式 get or post
                    url: prefix + "/list", // 服务器数据的加载地址
                    //showRefresh: true,
                    //	showToggle : true,
                    //	showColumns : true,
                    iconSize: 'outline',
                    toolbar: '#exampleToolbar',
                    striped: true, // 设置为true会有隔行变色效果
                    dataType: "json", // 服务器返回的数据类型
                    pagination: true, // 设置为true会在底部显示分页条
                    // queryParamsType : "limit",
                    // //设置为limit则会发送符合RESTFull格式的参数
                    singleSelect: false, // 设置为true将禁止多选
                    // contentType : "application/x-www-form-urlencoded",
                    // //发送到服务器的数据编码类型
                    pageSize: 10, // 如果设置了分页，每页数据条数
                    pageNumber: 1, // 如果设置了分布，首页页码
                    //search : true, // 是否显示搜索框
                    showColumns: false, // 是否显示内容下拉框（选择显示的列）
                    sidePagination: "server", // 设置在哪里进行分页，可选值为"client" 或者 "server"
                    clickToSelect : true, //是否开启选中
                    queryParams: function (params) {
                        return {
                            //说明：传入后台的参数包括offset开始索引，limit步长，sort排序列，order：desc或者,以及所有列的键值对
                            limit: params.limit,
                            offset: params.offset,
                            productName: $.trim($('#productName').val()),
                            productStatus: $('#productStatus').val(),
                            classId: $('#classId').val(),
                            createTime:$('#createTime').val()
                        };
                    },
                    // //请求服务器数据时，你可以通过重写参数的方式添加一些额外的参数，例如 toolbar 中的参数 如果
                    // queryParamsType = 'limit' ,返回参数必须包含
                    // limit, offset, search, sort, order 否则, 需要包含:
                    // pageSize, pageNumber, searchText, sortName,
                    // sortOrder.
                    // 返回false将会终止请求
                    columns: [
                        {
                            field: 'productId',
                            title: '商品编号'
                        },
                        {
                            field: 'productName',
                            title: '商品名称'
                        },
                        {
                            field: 'className',
                            title: '所属商品分类'
                        },
                        {
                            field: 'originalPrice',
                            title: '原价'
                        },
                        {
                            field: 'price',
                            title: '现价'
                        },
                        {
                            field: 'shipFee',
                            title: '快递费用'
                        },
                        {
                            field: 'createTime',
                            title: '创建时间'
                        },
                        {
                            field: 'productStatus',
                            title: '状态',
                            formatter: function (value, row, index) {
                                if (value == '0') {
                                    return '<span class="label label-danger">下架</span>';
                                } else if (value == '1') {
                                    return '<span class="label label-primary">上架</span>';
                                }
                            }
                        },
                        {
                            title: '操作',
                            field: 'productId',
                            align: 'center',
                            formatter: function (value, row, index) {
                                var d='<a class="btn btn-warning btn-sm ' + s_edit_d + '" href="#" mce_href="#" title="删除" ' +
                                    'onclick="selectPro(\''+ value  + '\',\''+ row.productName  + '\')"><i class="fa fa-address-card-o"></i>选择</a> ';
                                return d;
                            }
                        }]
                });
        $('#res_table').on('uncheck.bs.table check.bs.table check-all.bs.table uncheck-all.bs.table',function(e,rows){
            var datas = $.isArray(rows) ? rows : [rows];        // 点击时获取选中的行或取消选中的行
            examine(e.type,datas);                              // 保存到全局 Array() 里
        });

    }

    function query() {
        var opt = {
            query: {
                productName: $.trim($('#productName').val()),
                status: $('#status').val(),
                isTop: $('#isTop').val(),
                classId: $('#classId').val(),
                createTime:$('#createTime').val()
            }
        };
        $('#exampleTable').bootstrapTable('refresh', opt);
    }

    function reLoad() {
        var opt = {
            query: {
                limit: 10,
                offset: 0
            }
        };
        $('#exampleTable').bootstrapTable('refresh', opt);
    }


        //----赋值 并关闭当前页面 开始----
        function selectPro(productId, productName) {
            parent.$("#productId").val(productId);
            parent.$("#productName").val(productName);

            //--关闭 当前页面 开始--
            var index = parent.layer.getFrameIndex(window.name);
            parent.layer.close(index);
            //--关闭 当前页面 结束--
        }
        //----赋值 并关闭当前页面 结束----

       //使用getSelections即可获得，row是json格式的数据

    function  choice() {
        var rows = $('#exampleTable').bootstrapTable('getSelections');
        if (rows.length == 0) {
            layer.msg("请选择要删除的数据");
            return;
        }
        layer.confirm("确认要选中的'" + rows.length + "'条数据吗?", {
            btn: ['确定', '取消']
        },function () {
            var ids = new Array();
            var names = new Array();
            // 遍历所有选择的行数据，取每条数据对应的ID
            $.each(rows, function (i, row) {
                ids[i] = row['productId'];
                names[i] = row['productName'];
            })

            //赋值
            parent.$("#productIds").val(ids);
            parent.$("#productName").val(names);

            //关闭当前页面
            var index = parent.layer.getFrameIndex(window.name);
            parent.layer.close(index);
        }, function () {
        });
    }

</script>
</body>

</body>
</html>